Twilioのシークレット管理について(Auth TokenやAPI Keyなど)

Twilioのシークレット管理について(Auth TokenやAPI Keyなど)

Account SID + Auth Token

Twilioにアクセスする際に、コンソール画面のにTwilioアカウントのシークレットが表示されています。

Screenshot 2025-01-27 at 3.09.01 PM

このシークレット(Account SID + Auth Token)を使うことで、このTwilioアカウント配下の全てのリソースをアクセスできるようになります。

万が一、Twilioアカウントシークレット(Account SID + Auth Token)が漏れてしまって、悪用されたら、重大な事故が発生してしまいます。

セキュリティのため、不定期的に、もしくはAuth0 Tokenが漏れてしまう場合は、Auth0 Tokenをローテートすることが推奨されます。

API Key + Access Token

Twilio公式から、Twilioアカウントのリソースを、API key + Access Token の形式でアクセスすることを推奨しています。

API Key + Access Tokenのメリット:

  • API Keyを気軽に作成、削除できる
  • API Keyに複数Key Typeがあって、権限スコープ(Twilioアカウント全体か、一部のサービスのみか)に応じて選択可能
  • API Keyの権限を細かく管理ができる(Key Type: Restricted
  • Access Tokenに有効期限がある(最大24時間まで設定できる)

詳細Twilio API Keyの作成とAccess Tokenの取得までの手順:Twilio Creating Tokens 公式手順リンク

その他

サービスの開発に、複数の環境(DEV・STG・PROD・SANDBOX)に分かれることが多いと思います。

環境間影響させないように、Twilio Subaccountを作成することがおすすめです(例えば、負荷テストをしたい場合、subacccount-load-testというサブアカウントを作成する)。

サブアカウント内であれば、設定を変に変えても他の環境に影響する心配はありません。

Screenshot 2025-01-27 at 3.46.08 PM

Twilioのシークレット管理は以上でした。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.